package com.omp.dao;

import java.util.List;

import org.springside.modules.orm.Page;

import com.omp.entity.Product;

/**
 * 产品DAO
 */
public interface ProductDAO {

	/**
	 * 分页查询产品列表
	 * @param page 分页信息
	 * @param product 查询条件
	 * @return 产品列表
	 */
	public Page<Product> findByPage(Page<Product> page, Product product);
	
	/**
	 * 产品名称是否存在
	 * @param name 产品名称
	 * @return 是否存在  true：存在   false：不存在
	 */
	public boolean nameExists(String name);
	
	/**
	 * 根据ID删除产品
	 * @param id 产品ID
	 */
	public void deleteById(Integer id);
	
	/**
	 * 根据行业ID查询产品
	 * @param industryId 行业ID
	 * @param product 查询条件
	 * @return
	 */
	public List<Product> findByIndustryId(Integer industryId, Product product);
	
	/**
	 * 根据行业ID查询产品
	 * @param industryId
	 * @param product 查询条件
	 * @param findNoneIndustry 是否查询无所属行业的产品
	 * @return
	 */
	public List<Product> findByIndustryId(Integer industryId, Product product, boolean findNoneIndustry);
	
}
